package com.wuze.cloud.service;

import com.wuze.cloud.model.SysRegisterData;
import com.wuze.cloud.model.SysUploadData;
import com.wuze.cloud.request.*;
import com.wuze.cloud.response.SysUserInfoPageResponse;
import com.wuze.cloud.response.SysUserPageResponse;
import com.wuze.cloud.response.SysUserResponse;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public interface SysUserService {

    SysUserPageResponse findByPage(SysUserQuery query);
    SysUserInfoPageResponse findByPageV2(SysUserQuery query);
    SysUserResponse login(SysLoginUserQuery request);

    void register(SysCreateUserQuery query);

    void getCodeByRegister(SysGetCodeQuery query);
    void getCodeByResetPwd(SysGetCodeQuery query);

    List<SysUploadData> getUploadInfo();

    List<SysRegisterData> getRegisterInfo(String role);

    void resetPwd(SysResetPwdQuery query);
    SysUserResponse update(SysUpdateUserQuery query);

    void createAdmin(SysCreateUserQuery query);

    void batchDeleteUser(SysDelUserQuery query);

    void adminUpdate(SysAdminUpdateUserQuery query);
}
